#ifndef COLORPICKER_H
#define COLORPICKER_H

#include <qdialog.h>
#include <qwidget.h>
#include <qgraphicsview.h>
#include <ui_colorpickerwidget.h>

class cceColorPickerWheel;

class cceColorPicker : public QWidget
{
  Q_OBJECT
private:
  cceColorPickerWheel   *_wheel;

public:
  cceColorPicker(QWidget *parent);

  void SetColor (const QColor& color);
  const QColor& GetColor () const;

};

class cceColorPickerDialog : public QDialog
{
  Q_OBJECT
private:
  cceColorPicker*   _picker;

  Ui::ColorPickerWidget _gui;

  QColor           _color;

private slots:
  void on_pushButtonOk_clicked ();
  void on_pushButtonCancel_clicked ();

public:
  cceColorPickerDialog (QWidget* parent = 0);

  void SetColor (const QColor& color);
  const QColor& GetColor () const;

  static QColor GetColor (QWidget* parent, const QColor& color = QColor (255, 255, 255, 255), const QString& windowTitle = QString::Null ());

};

#endif // COLORPICKER_H
